"""
函数的四种情况
    1. 无参无返回
    2. 无参有返回
    3. 有参无返回
    4. 有参又返回
"""
# 1. 无参无返回 => 定义函数的时候,没有指定参数,并且在函数执行完毕的时候,不给返回值
def fn1():# 在fn1后面的() 当中没有写这个参数,那么就是无参
    print("我是fn1这个函数,我被执行了")
    # 当函数运行完毕之后,不给这个返回值,那么就不需要写return
# 调用这个函数 => 函数名()
fn1()


# 2. 无参有返回值 => 在定义函数的时候,没有指定参数,在函数执行完毕之后,给了返回值
def fn2():
    print("我是fn2函数,我被执行了")
    return "爱你哦"
# 调用fn2这个函数,因为这个有返回值了,所以我们在调用这个函数的时候,需要定义一个变量来接收这个返回值
res2 = fn2()
print(res2) # res2就是接收了函数的返回值


# 3. 有参无返回值 => 在定义函数的时候,有指定参数,但是在函数执行完毕的时候,没有返回值
def fn3(a,b):
    print('我是函数3,我被执行了',a+b)
# 调用这个fn3这个函数,那么我们就需要传递参数了
fn3(11,2)


# 4. 有参有返回值 => 在定义函数的时候,有指定参数,并且在函数执行结束之后,有返回值
def fn4(a,b,c,d):
    print("我是函数4,我被执行了")
    return a+b+c*d
# 调用这个函数,因为这个函数有返回值,所以我们在定义函数的时候,需要用有一个变量来进行接收
res4 = fn4(1,2,3,4)
print(res4) # res4这个变量就收的就是fn4这个函数的返回结果